var popInterval;
var DOMAIN = "http://pay.wanmei.com/new/";
var PAY_RESULT = "http://pay.wanmei.com/new/dota2/payResult.do?op=show";

$(document).ready(function() {

	function checkUserNamePattern(username) {
		if (!username || username == '')
			return false;

		var reg = /^1\d{10}$/;
		if (reg.test(username))
			return true;

		var reg2 = /^[a-zA-Z0-9_.-]{1,50}@[a-zA-Z0-9_.-]{2,50}$/;
		if (reg2.test(username))
			return true;

		var reg3 = /^[a-z]{1}[a-z0-9]{5,15}$/;
		if (reg3.test(username))
			return true;
		return false;
	}

	var ajaxusername = false;
	function ajaxCheckUsername() {
		$.ajax({
			type : "get",
			url : "ajax.do?op=username",
			data : "username=" + $("#username").val(),
			async : false,
			success : function(msg) {
				ajaxusername = false;
				if (msg == '1') {
					ajaxusername = true;
				} else if (msg == '0') {
					$("#tip_username").html("该账号并不存在");
					$("#tip_username").show();
					return false;
				} else if (msg == '2') {
					$("#tip_username").html("查询速度过快，请稍后再试");
					$("#tip_username").show();
					return false;
				} else {
					$("#tip_username").html("用户状态不正确或网络故障，请稍后再试");
					$("#tip_username").show();
					return false;
				}
			}
		});
	}

	function checkUserName() {
		if (!checkUserNamePattern($("#username").val())) {
			$("#tip_username").html("请输入正确的完美通行证");
			$("#tip_username").show();
			return false;
		}
		ajaxCheckUsername();
		if (!ajaxusername) {
			return false;
		} else {
			$("#tip_username").hide();
			return true;
		}
	}

	$("#username").change(function() {
		checkUserName();
	});

	function checkUserName2() {
		if ($("#username").val() != $("#username2").val()) {
			$("#tip_username2").html("两次输入的完美通行证账号不一致");
			$("#tip_username2").show();
			return false;
		} else {
			$("#tip_username2").hide();
			return true;
		}
	}

	$("#username2").change(function() {
		checkUserName2();
	});

	function changeRandImg() {
		$("#randimg").attr("src", "../servlet/getrandomimg?time=" + Math.random());
	}

	$("#changerandbutton").click(function() {
		changeRandImg();
	});

	$("#randimg").click(function() {
		changeRandImg();
	});

	function checkCardNumber() {
		var reg = /^[0-9]{5,15}$/;
		if (!reg.test($("#cardnumber").val())) {
			$("#tip_cardnumber").html("充值卡卡号错误");
			$("#tip_cardnumber").show();
			return false;
		} else {
			$("#tip_cardnumber").hide();
			return true;
		}

	}
	$("#cardnumber").change(function() {
		checkCardNumber();
	});

	function checkCardPassword() {
		var reg = /^[0-9]{5,25}$/
		if (!reg.test($("#cardpassword").val())) {
			$("#tip_cardpassword").html("充值卡密码错误");
			$("#tip_cardpassword").show();
			return false;
		} else {
			$("#tip_cardpassword").hide();
			return true;
		}
	}

	$("#cardpassword").change(function() {
		checkCardPassword();
	});
	
	var isRand = false;
	function checkRandImg() {
		if ($("#rand").val() == '') {
			$("#tip_rand").html("请输入正确的验证码");
			$("#tip_rand").show();
			return false;
		} else {
			$.ajax({
				type : "get",
				url : "ajax.do?op=rand",
				data : "rand=" + $("#rand").val(),
				async : false,
				success : function(msg) {
					if (msg == '0') {
						$("#tip_rand").html("请输入正确的验证码");
						$("#tip_rand").show();
						changeRandImg();
						return false;
					} else {
						$("#tip_rand").hide();
						isRand = true;
						return true;

					}
				}
			});
		}
		return true;

	}

	function checkChargeAmount(paytype) {
		var reg = /^[0-9]{1,6}$/;
		/*
		 * if(paytype=='5') { if($("#mobilechargeamount").val()=='') return
		 * false; return true; }
		 */
		if (!reg.test($("#chargeamount").val())) {
			$("#tip_chargeamount").html("请填600-5000000的整数");
			$("#tip_chargeamount").show();
			return false;
		}
		if ($("#chargeamount").val() < 6 || $("#chargeamount").val() > 50000) {
			$("#tip_chargeamount").html("请填600-5000000的整数");
			$("#tip_chargeamount").show();
			return false;
		} else {
			$("#tip_chargeamount").hide();
			return true;
		}
	}

	$("#inputmoney").change(function() {
		checkChargeAmount();
	});

	$("#rand").change(function() {
		checkRandImg();
	});
	function submitCardPay() {
		if (checkUserName() && checkUserName2() && checkCardNumber() && checkCardPassword() && checkRandImg() && isRand) {
			$.ajax({
				type : "GET",
				url : "http://pay.wanmei.com/new/dota2/cardPay.do?op=submit",
				data : "username=" + $("#username").val() + "&cardnumber=" + $("#cardnumber").val() + "&cardpassword=" + $("#cardpassword").val() + "&rand=" + $("#rand").val() + "&gametype=" + $("#gametype").val(),
				async : false,
				success : function(msg) {
					var json = eval("(" + msg + ")");
					if (json.res == 1) {// 成功
						window.location.href = PAY_RESULT;
						return;
					} else if (json.res == 2) {// 用户名错误
						$("#tip_username").html(json.message);
						$("#tip_username").show();
						changeRandImg();
					} else if (json.res == 3) {// 用户名错误
						$("#tip_cardnumber").html(json.message);
						$("#tip_cardnumber").show();
						changeRandImg();
					} else if (json.res == 4) {// 用户名错误
						$("#tip_rand").html(json.message);
						$("#tip_rand").show();
						changeRandImg();
					} else {// 其他错误
						window.location.href = PAY_RESULT;
						return;
					}
				}
			});
		}
	}

	function checkSmallPaytype() {
		if($("#paytype").val() == '2' && $("#smallpaytype").val() == '0'){
			$("#tip_error_msg").html("请选择银行！");
			$("#tip_error_msg").show();
			return false;
		}
		
		if ($("#paytype").val() == '5' && $("#smallpaytype").val() == '0') {
			$("#tip_card_msg").html("请选择充值卡类型！");
			$("#tip_card_msg").show();
			return false;
		}
		return true;

	}
	
	/**
	 * tip=1,paytype=1 为卡类型的，一卡通 tip=1,手机IVR tip=8,声讯电话 tip=7,短信支付 tip=11
	 * tip=2,paytype=3，为网银的，smallpatype不能为0 tip=3,paytype=402为支付宝账号，
	 * tip=4,paytype=402为支付宝账号，扫码支付 tip=5,paytype=5为手机卡支付，smallpaytype不能为0
	 * tip=6,paytype=21移动手机支付 tip=9,paytype=9为快钱支付 tip=10,paytype=4为易宝支付
	 */
	var paytypes = {
		1 : 1,
		2 : 3,
		3 : 402,
		4 : 402,
		5 : 5,
		6 : 21,
		10 : 4,
		9 : 9,
		12 : 7
	};

	function submitBankPay() {
		var paytype = $("#paytype").val();
		var smallpaytype = $("#smallpaytype").val();
		var payway;
		if (paytype == "4") {
			payway = "superqrcode";
		}
		paytype = (paytypes[paytype]);// 切换paytype
		var chargeamount = $("#chargeamount").val();
		
		if(paytype==5){ 
			chargeamount=$("#phonecardamount").val(); 
		}
		var chargeamountshow = $("#chargeamountshow").html();
		
		if (!checkChargeAmount(paytype)) {
			return false;
		}

		if ((paytype == 3 || paytype == 5) && smallpaytype > 0) {
			paytype = smallpaytype;
		}
		
		if(!checkSmallPaytype()){
			return false;
		}

		var data = "username=" + $("#username").val() + "&chargeamount=" + chargeamount + "&gametype=" + $("#gametype").val() + "&paytype=" + paytype + "&payway=" + payway;
		if($("#usecouponcount")){
			data = data + "&usecouponcount="+$("#usecouponcount").val();
		}
		if (checkUserName() && checkUserName2()) {
			$.ajax({
				type : "GET",
				url : "http://pay.wanmei.com/new/dota2/bankPay.do?op=submit",
				data : data,
				async : false,
				success : function(msg) {
					var json = eval("(" + msg + ")");
					// 成功
					if (json.res == 1) {
						var surl = json.url;
						if (paytype == "7") {
							$("#scanimg").attr("src", surl);
							$("#scanmsg").html("微信扫码支付");
							$("#rmbCurrency").html("￥" + chargeamountshow);
							$("#dota2Currency").html(chargeamount * 100);
							$.simpleDialog({
								title : '充值提示',
								content : $('#scanpop'),
							});
							popInterval = setInterval(function() {
								$.ajax({
									async : false,
									type : 'GET',
									url : DOMAIN + '/paycheck.do',
									data : 'ordernumber=' + json.ordernumber + "&time=" + Math.random(),
									success : function(data) {
										if (data == "0") {
											window.location.href = PAY_RESULT;
										}
									}
								})
							}, 5000);

						} else if ("402" == paytype && "superqrcode" == payway) {
							$("#scanimg").attr("src", surl);
							$("#scanmsg").html("支付宝扫码支付");
							$("#rmbCurrency").html("￥" + chargeamountshow);
							$("#dota2Currency").html(chargeamount * 100);
							$.simpleDialog({
								title : '充值提示',
								content : $('#scanpop'),
							});
							popInterval = setInterval(function() {
								$.ajax({
									async : false,
									type : 'GET',
									url : DOMAIN + '/paycheck.do',
									data : 'ordernumber=' + json.ordernumber + "&time=" + Math.random(),
									success : function(data) {
										if (data == "0") {
											window.location.href = PAY_RESULT;
										}
									}
								})
							}, 5000);
						} else {
							$.simpleDialog({
								title : '充值提示',
								content : $('#pop_result'),
								afterHide : function() {
									window.location.href = PAY_RESULT;
									return;
								}
							});
							$("#payurla").attr("href", surl);
							$("#payurlc").trigger("click");
							return;
						}
					} else if (json.res == 2) {// 用户名错误
						$("#tip_username").html(json.message);
						$("#tip_username").show();
						changeRandImg();
					} else if (json.res == 3) {// 用户名错误
						$("#tip_cardnumber").html(json.message);
						$("#tip_cardnumber").show();
						changeRandImg();
					} else if (json.res == 4) {// 用户名错误
						$("#tip_rand").html(json.message);
						$("#tip_rand").show();
						changeRandImg();
					} else {// 其他错误
						window.location.href = PAY_RESULT;
						return;
					}
				}
			});
		}
	}

	$("#pay_btn").click(function() {
		// paytype目前实际上是tip， 1,7,8,11都是手机卡
		if ($("#paytype").val() == 1 || $("#paytype").val() == 7 || $("#paytype").val() == 8 || $("#paytype").val() == 11) {
			submitCardPay();
		} else {
			// 重新覆盖成正式的paytype
			submitBankPay();
		}
	});

	$("#scanpopcancel").click(function() {
		$("#scanpop").hide();
		clearInterval(popInterval);
	});
	
	$("body").click(function() {
		$(".dropdown").hide();
		$("#payMore").removeClass('open');
	});
});
